1. Field of the Invention
This invention relates to computer graphical user interfaces. More specifically, the invention relates to a system that automatically alters window viewing priority and window size and that automatically alters cache priority for information presented by web browsers.
2. Description of the Prior Art
Graphical User Interfaces
Graphical user interfaces (GUIs) provide ways for users of computers and other devices to effectively communicate with the computer. GUIs include graphical images on computer monitors and often consist of both icons and windows. GUIs may also reside on the screens of televisions, kiosks, and automatic teller machines (ATMs). A computer window is a portion of the graphical image that appears on the monitor and is dedicated to some specific purpose. Windows allow the user to treat the graphical images on the computer monitor like a desktop where various files can remain open simultaneously. The user can control the size, shape, and position of the windows.
Although the use of GUIs with windows usually simplifies a user's interactions with a computer, GUIs are often tedious and frustrating to use. Windows must be maintained in a logical manner. Often times, windows obscure one another and are difficult to locate. One convenient way to think of windows is as tiles that overlay one another. Windows that have a higher viewing priority are towards the “front” of the viewing area while windows having a lower viewing priority are more obscured (by the “front” windows) and displayed towards the back of the viewing area.
It is difficult to organize windows and icons when many are similarly displayed at the same time on a single device. A need arises for a system and method of automatically controlling window tiling priority and window size so that users may more effectively interact with and manage GUIs, and, also, so that users can easily find windows relevant to their needs.
Examples of computers that change the display (i.e., viewing) priorities of windows are discussed in U.S. Pat. No. 4,783,648 issued to Nobuyuki et al. on Nov. 8, 1988. This reference is herein incorporated by reference in its entirety.
Web Page Caches
Computerized information gathering using such entities as the World Wide Web (“Web”) is based around the concept of “pages” of information. A page of information consists of any number of textual, graphical, audio/visual, or other elements (i.e., multimedia information) that are sent upon receipt of a request for that particular page by a computer or other device connected to the network from a server computer that may serve as a host repository for many such pages.
The Web is an extremely widespread information service that can deliver both text and non-text multimedia information (e.g., audio, video and graphics). The Web is a global hypertext system. Hypertext is a computer-based protocol for linking documents to other related documents. Links are embedded within the text of a document in the form of highlighted words or images and, when activated, cause the linked document to be retrieved and displayed. The linked document can itself contain links to other documents, and so on, ad infinitum. Links are most commonly activated by pointing and clicking with a mouse.
A computer system may be attached to an information network, such as the Web, by means of a modem or other network connecting device. Often the user is connected not directly to the information network itself but to an interim computer (network provider) with a direct connection.
The user of the requesting computer may request a specific page by sending a specific page name (such as the Universal Resource Locator, or URL, on the Web) to the network. This name is interpreted and routed to the correct server, which places the requested page data on the network for retrieval by the requesting computer. As mentioned, a page of information may contain “links” (textual or graphical pointers to other pages of information) that are available to the user of the requesting computer. If the user selects one of these links, the name of the associated information page is then requested and the process continues as described above. In this way, the user of the requesting computer can navigate the information network, requesting pages as desired.
While browsing the Web, pages are often stored in cache as a temporary local copy, for example, in a region of local disk storage, so that subsequent browsing to the same information is quicker. For example, a user may use a web browser to visit a web page showing images of cars, and then browse to a web page showing images of tires. By selecting a “back” button on the browser's GUI, the user again browses the page of information containing cars. However, this page, along with the car images, was stored locally on the user's computer when it was first viewed. Thus, this second visit to the car web site need only access the locally stored images. Therefore, the time required to browse the page a second time is shorter than the initial browsing to the page. Because the local storage (cache) available for storing web page information is limited, the portions of the web page cache are often cleared (i.e., deleted) to make room for new information.
A need arises to have a web browser or operating system with a cache prioritizing system so that higher priority information (corresponding to information that is likely to be relevant to a user's needs) is automatically stored in cache for longer periods of time before being discarded than lower-priority information that is not important or relevant. There is also a need to have relevant cached information quickly accessible by hitting a “back-like” button that shows more relevant information before less relevant information.
Examples of computers communicating over a network using web browsers are discussed in U.S. Pat. No. 5,878,223 issued to Becker et al. on Mar. 2, 1999. This reference is herein incorporated by reference in its entirety.